package com.bjfu.model;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;

import java.sql.Timestamp;
import java.time.LocalDateTime;

public class Achievement {
    @JsonProperty("achievement_id")
    private Long achievementId;
    private String title;
    private Integer category;
    private String summary;
    private String description;

    private String content;
    @JsonProperty("attachment_link")
    private String attachmentLink;
    @JsonProperty("created_time")
    private LocalDateTime createdTime;

    public Integer status; //add:状态，0草稿，1待审核，2（审核通过）已发布，3审核失败，4隐藏
    @JsonProperty("team_id")
    private Long teamId;


    // Getters and Setters
    public Long getAchievementId() {
        return achievementId;
    }

    public void setAchievementId(Long achievementId) {
        this.achievementId = achievementId;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public Integer getCategory() {
        return category;
    }

    public void setCategory(Integer category) {
        this.category = category;
    }

    public String getSummary() {
        return summary;
    }

    public void setSummary(String summary) {
        this.summary = summary;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getAttachmentLink() {
        return attachmentLink;
    }

    public void setAttachmentLink(String attachmentLink) {
        this.attachmentLink = attachmentLink;
    }

    public LocalDateTime getCreatedTime() {
        return createdTime;
    }

    public void setCreatedTime(LocalDateTime createdTime) {
        this.createdTime = createdTime;
    }

    public Long getTeamId() {
        return teamId;
    }

    public void setTeamId(Long teamId) {
        this.teamId = teamId;
    }


    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    @Override
    public String toString() {
        return "Achievement{" +
                "achievementId=" + achievementId +
                ", title='" + title + '\'' +
                ", category=" + category +
                ", summary='" + summary + '\'' +
                ", description='" + description + '\'' +
                ", content='" + content + '\'' +
                ", attachmentLink='" + attachmentLink + '\'' +
                ", createdTime=" + createdTime +
                ", status=" + status +
                ", teamId=" + teamId +
                '}';
    }
}
